#-*- coding: utf-8 -*-
#-------------------------------------------------------------------------------
# Number：     019
# Name:        modules 模块
# Author:      SUMMVING
# Email:       summving@gmail.com
# Created:     2013/08/20  09:58
# Copyright:   (c) SUMMVING 2013
# Licence:     GPLv3
#----------------------------------------------------------------------------

"""import module"""

import os                    #调用os模块，这个模块包含普遍的操作系统功能。
                             #利用这个模块可以写出与平台无关的程序
print os.name                #获取当前系统平台，win返回 ‘nt’，linux返回 ‘posix’
print os.getcwd()            #获取当前工作目录
#os.remove(path/filename)    #用来删除一个文件
#os.system()                 #用来运行shell命令。此命令可以方便的调用或执行其他脚本和命令
#os.system('notepad')        #打开记事本

import sys
#sys.argv[]                  #实现从程序外部向程序内部传递参数
print sys.platform           #获取当前平台，输出：win32
print sys.getdefaultencoding()     #获取系统当前编码，一般默认为ascii


"""from UserDict import UserDict"""

#UserDict 被直接导入到局部名字空间去了，所以它可以直接使用，而不需要加上模块名的限定。
#你可以导入独立的项或使用 from module import *来导入所有东西。


"""什么时候你应该使用 from module import？"""

#如果你要经常访问模块的属性和方法，且不想一遍又一遍地敲入模块名，使用 from module import。
#如果你想要有选择地导入某些属性和方法，而不想要其它的，使用 from module import。
#如果模块包含的属性和方法与你的某个模块同名，你必须使用 import module 来避免名字冲突。
#尽量少用 from module import * ，因为判定一个特殊的函数或属性是从哪来的有些困难，并且会造成调试和重构都更困难。